home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / ActiveX Controlls / NCTAudioEditor2 ActiveX DLL / NCTAudioEditor2.exe / {app} / Samples / TestBCBAudioEditor2 / Setup.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2003-03-28  |  13.8 KB  |  328 lines

  1. //---------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4.  
  5. #include "Setup.h"
  6. #include "Main.h"
  7. #include <FileCtrl.hpp>
  8. //---------------------------------------------------------------------
  9. #pragma link "CSPIN"
  10. #pragma resource "*.dfm"
  11. TfrmOptions *frmOptions;
  12. //--------------------------------------------------------------------- 
  13. __fastcall TfrmOptions::TfrmOptions(TComponent* AOwner)
  14.     : TForm(AOwner)
  15. {
  16. }
  17. //---------------------------------------------------------------------
  18. void __fastcall TfrmOptions::lstColorsClick(TObject *Sender)
  19. {
  20.     switch (lstColors->ItemIndex){
  21.         case 0: ColorPanel->Color = (TColor)Colors->DigitalWaveform; break;
  22.         case 1: ColorPanel->Color = (TColor)Colors->AnalogWaveform; break;
  23.         case 2: ColorPanel->Color = (TColor)Colors->Background; break;
  24.         case 3: ColorPanel->Color = (TColor)Colors->CenterLine; break;
  25.         case 4: ColorPanel->Color = (TColor)Colors->SelectDigitalWaveform; break;
  26.         case 5: ColorPanel->Color = (TColor)Colors->SelectAnalogWaveform; break;
  27.         case 6: ColorPanel->Color = (TColor)Colors->SelectBackground; break;
  28.         case 7: ColorPanel->Color = (TColor)Colors->SelectCenterLine; break;
  29.         case 8: ColorPanel->Color = (TColor)Colors->Grid; break;
  30.         case 9: ColorPanel->Color = (TColor)Colors->Cursor; break;
  31.         case 10: ColorPanel->Color = (TColor)Colors->PlayCursor; break;
  32.         case 11: ColorPanel->Color = (TColor)Colors->Boundary; break;
  33.         case 12: ColorPanel->Color = (TColor)Colors->Scales; break;
  34.         case 13: ColorPanel->Color = (TColor)Colors->Font; break;
  35.         case 14: ColorPanel->Color = (TColor)Colors->CueMarker; break;
  36.         case 15: ColorPanel->Color = (TColor)Colors->RangeMarker; break;
  37.         case 16: ColorPanel->Color = (TColor)Colors->RangeMarkerBackground; break;
  38.     }
  39. }
  40. //---------------------------------------------------------------------------
  41.  
  42. void __fastcall TfrmOptions::FormShow(TObject *Sender)
  43. {
  44.     Colors = frmMain->AudioEditor1->Colors;
  45.     lstColors->ItemIndex = 0;
  46.     lstColorsClick(Sender);
  47.     spinBufSize->Value = frmMain->AudioEditor1->DeviceInput->BufferSize;
  48.     spinBufCount->Value = frmMain->AudioEditor1->DeviceInput->BufferCount;
  49.     spinBufTick->Value = frmMain->AudioEditor1->DeviceInput->TimerInterval;
  50.     txtTempDir->Text = frmMain->AudioEditor1->TempDirectory;
  51.     spinUndoRedo->Value = frmMain->AudioEditor1->UndoRedoCount;
  52.     chSENAI->Checked = frmMain->AudioEditor1->FileInfo->SaveExtraInfoEnabled;
  53.  
  54.     chHSGrid->Checked = frmMain->AudioEditor1->ScaleY->Grid;
  55.     chVSGrid->Checked = frmMain->AudioEditor1->ScaleX->Grid;
  56.     chHSEnable->Checked = frmMain->AudioEditor1->ScaleX->Visible;
  57.     chVSEnable->Checked = frmMain->AudioEditor1->ScaleY->Visible;
  58.  
  59.     rgBorder->ItemIndex = frmMain->AudioEditor1->TypeBorder;
  60.     cmbHSType->ItemIndex = frmMain->AudioEditor1->ScaleX->Type - 1;
  61.     cmbVSType->ItemIndex = frmMain->AudioEditor1->ScaleY->Type - 1;
  62.     cmbVSOrien->ItemIndex = frmMain->AudioEditor1->ScaleY->Orientation - 1;
  63.  
  64.     chMarkerBarEnabled->Checked = frmMain->AudioEditor1->MarkerBarEnabled;
  65.     chMarkerBkEnabled->Checked = frmMain->AudioEditor1->MarkerBackgroundEnabled;
  66.  
  67.     chSmooth->Checked = frmMain->AudioEditor1->Transform->SmoothEnabled;
  68.     spinCrossfadeTime->Value = frmMain->AudioEditor1->Transform->SmoothTime;
  69.  
  70.     rgVisType->ItemIndex = frmMain->AudioEditor1->RecordVisualizationType - 1;
  71.     chAccuEnabled->Checked = frmMain->AudioEditor1->Recorder->AccuEnabled;
  72.     
  73.     spinAttackTime->Value = frmMain->AudioEditor1->Recorder->AccuAttackTime;
  74.     spinReleaseTime->Value = frmMain->AudioEditor1->Recorder->AccuReleaseTime;
  75.     spinAttackLevel->Value = frmMain->AudioEditor1->Recorder->AccuAttackLevel;
  76.     spinReleaseLevel->Value = frmMain->AudioEditor1->Recorder->AccuReleaseLevel;
  77.  
  78.     spinAGCLowLevel->Value = frmMain->AudioEditor1->Recorder->AGCLowLevel;
  79.     spinAGCHighLevel->Value = frmMain->AudioEditor1->Recorder->AGCHighLevel;
  80.     spinAGCRate->Value = frmMain->AudioEditor1->Recorder->AGCAttackTime;
  81.     chAGCEnabled->Checked = frmMain->AudioEditor1->Recorder->AGCEnabled;
  82.     
  83.     chAGCEnabledClick(Sender);
  84.     chAccuEnabledClick(Sender);
  85.     chSmoothClick(Sender);
  86. }
  87. //---------------------------------------------------------------------------
  88.  
  89. void __fastcall TfrmOptions::btnChangeColorClick(TObject *Sender)
  90. {
  91.     if (ColorDialog1->Execute()){
  92.         ColorPanel->Color = ColorDialog1->Color;
  93.         switch (lstColors->ItemIndex){
  94.             case 0: Colors->DigitalWaveform = ColorPanel->Color; break;
  95.             case 1: Colors->AnalogWaveform = ColorPanel->Color; break;
  96.             case 2: Colors->Background = ColorPanel->Color; break;
  97.             case 3: Colors->CenterLine = ColorPanel->Color; break;
  98.             case 4: Colors->SelectDigitalWaveform = ColorPanel->Color; break;
  99.             case 5: Colors->SelectAnalogWaveform = ColorPanel->Color; break;
  100.             case 6: Colors->SelectBackground = ColorPanel->Color; break;
  101.             case 7: Colors->SelectCenterLine = ColorPanel->Color; break;
  102.             case 8: Colors->Grid = ColorPanel->Color; break;
  103.             case 9: Colors->Cursor = ColorPanel->Color; break;
  104.             case 10: Colors->PlayCursor = ColorPanel->Color; break;
  105.             case 11: Colors->Boundary = ColorPanel->Color; break;
  106.             case 12: Colors->Scales = ColorPanel->Color; break;
  107.             case 13: Colors->Font = ColorPanel->Color; break;
  108.             case 14: Colors->CueMarker = ColorPanel->Color; break;
  109.             case 15: Colors->RangeMarker = ColorPanel->Color; break;
  110.             case 16: Colors->RangeMarkerBackground = ColorPanel->Color; break;
  111.         }
  112.     }
  113. }
  114. //---------------------------------------------------------------------------
  115.  
  116. void __fastcall TfrmOptions::btnChangeDirClick(TObject *Sender)
  117. {
  118.     AnsiString s = txtTempDir->Text;
  119.     if (SelectDirectory(AnsiString("Select Temp Directory"),WideString(""),s)){
  120.         frmMain->AudioEditor1->TempDirectory = s;
  121.     }
  122.     txtTempDir->Text = frmMain->AudioEditor1->TempDirectory;
  123. }
  124. //---------------------------------------------------------------------------
  125.  
  126. void __fastcall TfrmOptions::chAGCEnabledClick(TObject *Sender)
  127. {
  128.     frmMain->AudioEditor1->Recorder->AGCEnabled = chAGCEnabled->Checked;
  129.     spinAGCRate->Enabled = chAGCEnabled->Checked;
  130.     lblAGCRate->Enabled = chAGCEnabled->Checked;
  131.     spinAGCLowLevel->Enabled = chAGCEnabled->Checked;
  132.     lblAGCLowLevel->Enabled = chAGCEnabled->Checked;
  133.     spinAGCHighLevel->Enabled = chAGCEnabled->Checked;
  134.     lblAGCHighLevel->Enabled = chAGCEnabled->Checked;
  135.     frmMain->btnAGC->Down = chAGCEnabled->Checked;
  136. }
  137. //---------------------------------------------------------------------------
  138.  
  139. void __fastcall TfrmOptions::chAccuEnabledClick(TObject *Sender)
  140. {
  141.     frmMain->AudioEditor1->Recorder->AccuEnabled = chAccuEnabled->Checked;
  142.     
  143.     gbRelease->Enabled = chAccuEnabled->Checked;
  144.     gbAttack->Enabled = chAccuEnabled->Checked;
  145.  
  146.     spinAttackTime->Enabled = chAccuEnabled->Checked;
  147.     spinAttackLevel->Enabled = chAccuEnabled->Checked;
  148.     spinReleaseTime->Enabled = chAccuEnabled->Checked;
  149.     spinReleaseLevel->Enabled = chAccuEnabled->Checked;
  150.  
  151.     lblAttackTime->Enabled = chAccuEnabled->Checked;
  152.     lblAttackLevel->Enabled = chAccuEnabled->Checked;
  153.     lblReleaseTime->Enabled = chAccuEnabled->Checked;
  154.     lblReleaseLevel->Enabled = chAccuEnabled->Checked;
  155. }
  156. //---------------------------------------------------------------------------
  157.  
  158. void __fastcall TfrmOptions::spinBufSizeChange(TObject *Sender)
  159. {
  160.     frmMain->AudioEditor1->DeviceInput->BufferSize = spinBufSize->Value;
  161.     frmMain->AudioEditor1->DeviceOutput->BufferSize = spinBufSize->Value;
  162. }
  163. //---------------------------------------------------------------------------
  164.  
  165. void __fastcall TfrmOptions::spinBufCountChange(TObject *Sender)
  166. {
  167.     frmMain->AudioEditor1->DeviceInput->BufferCount = spinBufCount->Value;
  168.     frmMain->AudioEditor1->DeviceOutput->BufferCount = spinBufCount->Value;
  169. }
  170. //---------------------------------------------------------------------------
  171.  
  172. void __fastcall TfrmOptions::spinBufTickChange(TObject *Sender)
  173. {
  174.     frmMain->AudioEditor1->DeviceInput->TimerInterval = spinBufTick->Value;
  175.     frmMain->AudioEditor1->DeviceOutput->TimerInterval = spinBufTick->Value;
  176. }
  177. //---------------------------------------------------------------------------
  178.  
  179. void __fastcall TfrmOptions::spinUndoRedoChange(TObject *Sender)
  180. {
  181.     frmMain->AudioEditor1->UndoRedoCount = spinUndoRedo->Value;
  182. }
  183. //---------------------------------------------------------------------------
  184.  
  185. void __fastcall TfrmOptions::chSENAIClick(TObject *Sender)
  186. {
  187.     frmMain->AudioEditor1->FileInfo->SaveExtraInfoEnabled = chSENAI->Checked;
  188. }
  189. //---------------------------------------------------------------------------
  190.  
  191. void __fastcall TfrmOptions::chHSEnableClick(TObject *Sender)
  192. {
  193.     frmMain->AudioEditor1->ScaleX->Visible = chHSEnable->Checked;
  194. }
  195. //---------------------------------------------------------------------------
  196.  
  197. void __fastcall TfrmOptions::chHSGridClick(TObject *Sender)
  198. {
  199.     frmMain->AudioEditor1->ScaleX->Grid = chHSGrid->Checked;
  200. }
  201. //---------------------------------------------------------------------------
  202.  
  203. void __fastcall TfrmOptions::chVSEnableClick(TObject *Sender)
  204. {
  205.     frmMain->AudioEditor1->ScaleY->Visible = chVSEnable->Checked;
  206. }
  207. //---------------------------------------------------------------------------
  208.  
  209. void __fastcall TfrmOptions::chVSGridClick(TObject *Sender)
  210. {
  211.     frmMain->AudioEditor1->ScaleY->Grid = chVSGrid->Checked;
  212. }
  213. //---------------------------------------------------------------------------
  214.  
  215. void __fastcall TfrmOptions::cmbHSTypeClick(TObject *Sender)
  216. {
  217.      frmMain->AudioEditor1->ScaleX->Type = cmbHSType->ItemIndex + 1;
  218. }
  219. //---------------------------------------------------------------------------
  220.  
  221. void __fastcall TfrmOptions::cmbVSTypeClick(TObject *Sender)
  222. {
  223.     frmMain->AudioEditor1->ScaleY->Type = cmbVSType->ItemIndex + 1;
  224. }
  225. //---------------------------------------------------------------------------
  226.  
  227. void __fastcall TfrmOptions::cmbVSOrienClick(TObject *Sender)
  228. {
  229.     frmMain->AudioEditor1->ScaleY->Orientation = cmbVSOrien->ItemIndex + 1;
  230. }
  231. //---------------------------------------------------------------------------
  232.  
  233. void __fastcall TfrmOptions::rgBorderClick(TObject *Sender)
  234. {
  235.     frmMain->AudioEditor1->TypeBorder = rgBorder->ItemIndex;
  236. }
  237. //---------------------------------------------------------------------------
  238.  
  239. void __fastcall TfrmOptions::chMarkerBarEnabledClick(TObject *Sender)
  240. {
  241.     frmMain->AudioEditor1->MarkerBarEnabled = chMarkerBarEnabled->Checked;
  242. }
  243. //---------------------------------------------------------------------------
  244.  
  245. void __fastcall TfrmOptions::chMarkerBkEnabledClick(TObject *Sender)
  246. {
  247.     frmMain->AudioEditor1->MarkerBackgroundEnabled = chMarkerBkEnabled->Checked;
  248. }
  249. //---------------------------------------------------------------------------
  250.  
  251. void __fastcall TfrmOptions::chSmoothClick(TObject *Sender)
  252. {
  253.     frmMain->AudioEditor1->Transform->SmoothEnabled = chSmooth->Checked;
  254.     lblCrossfadeTimeMs->Enabled = chSmooth->Checked;
  255.     lblCrossfadeTime->Enabled = chSmooth->Checked;
  256.     spinCrossfadeTime->Enabled = chSmooth->Checked;
  257. }
  258. //---------------------------------------------------------------------------
  259.  
  260. void __fastcall TfrmOptions::spinCrossfadeTimeChange(TObject *Sender)
  261. {
  262.     frmMain->AudioEditor1->Transform->SmoothTime = spinCrossfadeTime->Value;
  263. }
  264. //---------------------------------------------------------------------------
  265.  
  266. void __fastcall TfrmOptions::spinAttackTimeChange(TObject *Sender)
  267. {
  268.     frmMain->AudioEditor1->Recorder->AccuAttackTime = spinAttackTime->Value;
  269. }
  270. //---------------------------------------------------------------------------
  271.  
  272. void __fastcall TfrmOptions::spinAttackLevelChange(TObject *Sender)
  273. {
  274.     frmMain->AudioEditor1->Recorder->AccuAttackLevel = spinAttackLevel->Value;
  275. }
  276. //---------------------------------------------------------------------------
  277.  
  278. void __fastcall TfrmOptions::spinReleaseTimeChange(TObject *Sender)
  279. {
  280.     frmMain->AudioEditor1->Recorder->AccuReleaseTime = spinReleaseTime->Value;
  281. }
  282. //---------------------------------------------------------------------------
  283.  
  284. void __fastcall TfrmOptions::spinReleaseLevelChange(TObject *Sender)
  285. {
  286.     frmMain->AudioEditor1->Recorder->AccuReleaseLevel = spinReleaseLevel->Value;
  287. }
  288. //---------------------------------------------------------------------------
  289.  
  290. void __fastcall TfrmOptions::spinAGCLowLevelChange(TObject *Sender)
  291. {
  292.     frmMain->AudioEditor1->Recorder->AGCLowLevel = spinAGCLowLevel->Value;
  293. }
  294. //---------------------------------------------------------------------------
  295.  
  296. void __fastcall TfrmOptions::spinAGCHighLevelChange(TObject *Sender)
  297. {
  298.     frmMain->AudioEditor1->Recorder->AGCHighLevel = spinAGCHighLevel->Value;
  299. }
  300. //---------------------------------------------------------------------------
  301.  
  302. void __fastcall TfrmOptions::spinAGCRateChange(TObject *Sender)
  303. {
  304.     frmMain->AudioEditor1->Recorder->AGCAttackTime = spinAGCRate->Value;
  305. }
  306. //---------------------------------------------------------------------------
  307.  
  308. void __fastcall TfrmOptions::rgVisTypeClick(TObject *Sender)
  309. {
  310.     frmMain->AudioEditor1->RecordVisualizationType = rgVisType->ItemIndex + 1;
  311. }
  312. //---------------------------------------------------------------------------
  313.  
  314. void __fastcall TfrmOptions::btnHSFontClick(TObject *Sender)
  315. {
  316.     if (FontDialog1->Execute()){
  317.     }
  318. }
  319. //---------------------------------------------------------------------------
  320.  
  321. void __fastcall TfrmOptions::btnVSFontClick(TObject *Sender)
  322. {
  323.     if (FontDialog1->Execute()){
  324.     }    
  325. }
  326. //---------------------------------------------------------------------------
  327.  
  328.